(Approx. 1,373 words)

Network Warrior
Reviewed by David Boyes
Dboyes(at)sinenomine.net

Author: 		Gary A. Donahue
Publisher:		O'Reilly Media, Inc.
Published:		June 2007
ISBN:			0-596-10151-1
Pages:		577
Overall Rating: 	Recommended.

Obtained from APCUG with the author's permission for publication by APCUG member groups.

Overview

This book is a collection of notes and process recipes to solve common problems found in commercial networks. The approach builds on a basic conceptual education about networking (roughly targeted at someone who has just completed a CCNA certification or is in the process of completing a CCNA-certification) and explains the “why” things are done, rather than the “how” covered by the product manuals. Written by an experienced network consultant, the book explores routing and switching topics, a short introduction to telecom terms and common connectivity scenarios, short tutorials on the basics of network design and documentation, with useful commentary on implementing converged voice and data networks. The end of the book comments on the personal side of building networks and generating change and credibility in a commercial organization -- almost more valuable than the rest of the book in terms of generating successful implementations. 

General Approach and Presentation

The author presents the material in a very conversational style; early in the book, you feel you're chatting over a beverage with a buddy who's been there and is trying to give you the map of the territory.  The presentation is organized into major topic parts which cover general areas such as layer 3 routing technology, layer 2 switching, multi-layer switching, telecom, security, load balancing, etc. The parts then provide individual sections that discuss topics related to the major topic in more detail. Each section generally explains a problem situation, lays out issues in the problem, and works through a sample solution step-by-step. It's sort of a back-of-the-napkin school of network engineering; learn by doing, with someone handy to explain your mistakes. At more than 500 pages, the book covers a lot of different areas, but sacrifices some detail coverage to gain breadth. This isn't really a problem, though, given the initial premise of an “inherited notebook” from a more experienced buddy – if nothing else, it exposes you to the bones of the problem, and helps you look for the right set of supplementary documentation to find the answer you're really looking for.

Book Content and Discussion

The book is divided into eight major parts, dealing with layer 2 switching, layer 3 routing and routing design, multi-layer switching as implemented for Cisco equipment, telecom topics, security and firewalls, server load balancing, QoS, and overall network design principles. Each section has five to eight sub-topics within the overall rubric of the section. 

The layer 2 section deals with configuration and management of topology in layer 2 networks and general VLAN theory-and-practice when dealing with multiple switches and the task of controlling how ports and VLANs are propagated between devices. One of the most positive areas in this part of the book revolves around carefully comparing risks of each feature described and how to mitigate those risks by relating them to careful planning. This is a pet peeve of mine (when people don't do it and wonder why things get fouled in the bitstreams), and it's good advice and review regardless of the skill level of the practitioner. 

The layer 3 routing section deals primarily with controlling routing propagation, routing protocol setup for the most common interior routing protocols (RIP, OSPF, and EIGRP) and some discussion on general routing encapsulation (GRE) tunneling and HSRP implementation. The coverage is well written and contains good solid advice on designing and implementing a routing architecture in a small to medium size network. As network size and complexity increases, I'd contest some decisions discussed, but in general, what's here works reliably, and infinite are the arguments of mages.

The multi-layer switching section focuses almost exclusively on medium to high-end Cisco devices (the 6500 and3750 line). This section is less helpful than some others in that it concentrates completely on tricks to simplify configuration, but doesn't really discuss much about what's actually happening in the device, and why multilayer switches are so effective in network design. If you've inherited the care and feeding of one of these boxes, it's a good set of directions for keeping it happy and keeping the work down, but there's not a lot of deeper learning here. 

The telecom section covers a discussion of T1 and DS3 circuits, a short glossary of telecom terms, and a discussion of frame relay and its implementation details. This section is both appealing in its simplicity and straightforward presentation, but it's hard to relate some of the discussion to how it fits into the book’s overall structure. It is a good thumbnail glossary for common terms, and if you're interacting with the phone company during an outage or helping them perform diagnostics on a broken circuit, it's good enough to get to a basic understanding of what they're trying to do. 

The security and firewall section and server load balancing section cover neat application optimization tricks for the integrated firewall, ACL capability in IOS, and the Content Switch Modules in turn. The discussion on optimizing ACL sequence to get the best performance (and how to see how often each ACL has fired) is well worth the time to read, as is the discussion on basic PIX configuration that gives one enough information to make simple changes without the full PIX training course. The load balancing discussion does a good job of illustrating the process of configuration, but it's a bit light on examples. 

The QoS chapters are one of the book’s best features. This topic is seldom explained well in CCNA materials (even Cisco-approved ones), and the description is both lucid and comprehensive. The material on handling converged networks is very good, and tips on troubleshooting converged networks (especially the discussion on voice traffic prioritization) are both reasoned and comprehensive. 

Part 8, the general network design component seems somewhat a catch-all. There's discussion of addressing schemes, and numbering plans for IP addresses, but also a chapter on NTP design and implementation that doesn't really fit here. On the other hand, the last three chapters (“Failures”, “GAD's Maxims”, and “Avoiding Frustration”), are probably the best chapters in the book – they really deserve a section of their own entitled “How To Act Like A Professional” and are a wonderful capsule lesson in how to work with a client, not just for one. These chapters aren’t as comprehensive as Tom Limoncelli's “Time Management for System Administrators” (also available from O'Reilly), but anything that includes a section titled “How Not to Be a Computer Jerk” has something to say to new and old hands alike. The section on “Why Change Control Is Your Friend” should be required reading for every network administrator – it's an honest and complete argument for why documentation and change processes are necessary in a reliable and stable network. 

Conclusion and Comments

Overall, the book provides a large number of useful bits, and as noted above, the last three chapters on how to work the system ought to be required reading for just about anyone in the IT world who actually has to deal directly with customers or other technicians (i.e., everyone). The book would benefit from a few small organizational changes to group related topics in a more systematic way (for example, presenting material on telecom as basic communications technology, building on that with routing/switching materials, then moving on to application-layer technology like load balancing and firewalls), but it works as it stands for a reference work companion to CCNA study materials. The idea of a book on “why” -- or why not -- to do something is particularly valuable and it adds a good shake of experience to let you know where the land mines are. It won't always save you from mistakes, but at least you'll know what exploded ... and why. 

David Boyes is CTO of Sine Nomine Associates, a design and R&D engineering firm near Washington, DC, and frequent speaker at CPCUG and other user groups worldwide.

This article has been provided to APCUG by the author solely for publication by APCUG member groups. All other uses require the permission of the author (see e-mail address above).